package com.ac.api.process_line.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * 工序任务单表
 * </p>
 *
 * @author dc
 * @since 2025-06-11
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="TaskVo", description="工序任务单表")
public class TaskVo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "工序区编号")
    @TableId(value = "task_id", type = IdType.AUTO)
    private Integer taskId;

    @ApiModelProperty(value = "关联所属生产线id")
    @TableField("Line_id")
    private Integer lineId;

    @ApiModelProperty(value = "工序名（固晶/焊线/封装）")
    private String processName;

    @ApiModelProperty(value = "工序任务状态")
    private String status;

    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createdAt;

    @ApiModelProperty(value = "更新时间")
    private LocalDateTime updatedAt;
    @ApiModelProperty(value = "产品型号（如LED灯型号）")
    private String productModel;
    @ApiModelProperty(value = "设备列表")
    private List equipmentList;

    public TaskVo(Integer taskId, Integer lineId, String processName, String status, LocalDateTime createdAt, LocalDateTime updatedAt, String productModel, List equipmentList) {
        this.taskId = taskId;
        this.lineId = lineId;
        this.processName = processName;
        this.status = status;
        this.createdAt = createdAt;
        this.updatedAt = updatedAt;
        this.productModel = productModel;
        this.equipmentList = equipmentList;
    }
}
